/**
 *
 */
package com.angel.io.processors.commands.exports;

import java.util.List;

import com.angel.io.descriptor.ExportFileProcessorDescriptor;
import com.angel.io.descriptor.ExportedFileDescriptor;
import com.angel.io.separator.ColumnSeparator;
import com.angel.io.type.rows.ExportRowFile;
import com.angel.io.type.rows.impl.HeaderRowFile;

/**
 * @author William
 *
 */
public interface ExportFileProcessorCommand {

	public List<ExportRowFile> prepareFile(HeaderRowFile header, Integer quantityRows, ColumnSeparator columnSeparator);

	public ExportRowFile createHeader(HeaderRowFile header, ColumnSeparator columnSeparator);

	public void initialize();

	public void finish(ExportedFileDescriptor exportedFileDescriptor, ExportFileProcessorDescriptor fileProcessorDescriptor, HeaderRowFile header, List<ExportRowFile> exportRows);


}
